package cn.iocoder.yudao.module.biz.controller.admin.trainingRecord.vo;

import lombok.*;
import java.util.*;
import io.swagger.annotations.*;
import javax.validation.constraints.*;
import org.springframework.format.annotation.DateTimeFormat;

import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;

/**
* 培训记录 Base VO，提供给添加、修改、详细的子 VO 使用
* 如果子 VO 存在差异的字段，请不要添加到这里，影响 Swagger 文档生成
*/
@Data
public class BizTrainingRecordBaseVO {

    @ApiModelProperty(value = "培训计划ID")
    private String trainingPlanId;

    @ApiModelProperty(value = "讲师", required = true)
    @NotNull(message = "讲师不能为空")
    private String teacher;

    @ApiModelProperty(value = "培训项目", required = true)
    @NotNull(message = "培训项目不能为空")
    private String trainingProject;

    @ApiModelProperty(value = "培训时间", required = true)
    @NotNull(message = "培训时间不能为空")
    @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
    private Date trainingTime;

    @ApiModelProperty(value = "培训内容")
    private String trainingContent;

    @ApiModelProperty(value = "培训地址", required = true)
    @NotNull(message = "培训地址不能为空")
    private String trainingAddress;

    @ApiModelProperty(value = "现场图片ID")
    private String siteImageId;

    @ApiModelProperty(value = "签到表图片ID")
    private String signinImageId;

    @ApiModelProperty(value = "计划变更备注")
    private String planChangeNote;

    @ApiModelProperty(value = "培训课件ID")
    private String trainingCourseId;

    @ApiModelProperty(value = "当前用户所属部门")
    private String deptId;

    private String id;
}
